arm: support fewer LR registers than virtual irqs
authorStefano Stabellini <stefano.stabellini@eu.citrix.com>
Fri, 1 Jun 2012 09:20:31 +0000 (10:20 +0100)
committerStefano Stabellini <stefano.stabellini@eu.citrix.com>
Fri, 1 Jun 2012 09:20:31 +0000 (10:20 +0100)
commit27ee575304c261c1463576742eefc1c5153d30e5
tree8cce47529de06954fecdfe997c7e2143e69095f0
parentfc093079b1121d0b21db608acf0a90cee78d8455
arm: support fewer LR registers than virtual irqs

If the vgic needs to inject a virtual irq into the guest, but no free
LR registers are available, add the irq to a list and return.
Whenever an LR register becomes available we add the queued irq to it
and remove it from the list.
We use the gic lock to protect the list and the bitmask.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
xen/arch/arm/gic.c
xen/include/asm-arm/domain.h